package br.com.simora.crawler;

import java.util.Date;

import javax.inject.Named;

import org.apache.log4j.Logger;

import br.com.simora.musica.Artista;
import br.com.simora.musica.Musica;
import br.com.simora.radio.RadioEnum;

@Named("nativabhfm")
public class NativaBHFMCrawler extends AbstractCrawler {
	private static Logger logger = Logger.getLogger(NativaBHFMCrawler.class);
	private static String URL = "http://assets.izap.com.br/nativaminasfm.com.br/uploads/onlinedata-1.json?time=";
	
	@Override
	public void recuperaInfo(){
		recuperador.setUrl(URL +  +  new Date().getTime(), "html");
		String itensConteudo = recuperador.getPagina().getConteudo();
		String artistaNome = "";
		String musicaNome = "";
		if(!"".equals(itensConteudo) && null != itensConteudo){
			itensConteudo = itensConteudo.replace("\"", "");
			String[] itens = itensConteudo.split(",");
			Boolean entrouMusica = false;
			for(int i=0; i < itens.length; i++){
				if(itens[i].contains(":")){
					String[] itemFim = itens[i].split(":");
					if("musica".equalsIgnoreCase(itemFim[0])){
						entrouMusica = true;
					}
					if(entrouMusica && itemFim.length > 1){
						if("artista".equals(itemFim[0])){
							artistaNome = itemFim[1];
						}
						if("nome".equals(itemFim[0])){
							musicaNome = itemFim[1];
						}
						if(!"".equals(artistaNome) && !"".equals(musicaNome)){
							artista = new Artista();
							artista.setNome(artistaNome.trim());
							musica = new Musica();
							musica.setNome(musicaNome.trim());
							break;
						}
					}
				}
			}
		}
		logger.debug(artistaNome + " - " + musicaNome);
	}

	@Override
	public void setRadioNome() {
		this.radioNome = RadioEnum.nativabhfm.getNome();
	}

}